# Opções do compilador
GPPOPTS = -Wall -O3 -DDSFMT_MEXP=19937

ts_ad2011_1: dsfmt tinythread estatistica exponencial fregues es simulador
	g++ $(GPPOPTS) -lpthread src/main.cpp dSFMT.o tinythread.o estatistica.o exponencial.o fregues.o es.o simulador.o -o ts_ad2011_1

dsfmt: src/dSFMT/dSFMT.h src/dSFMT/dSFMT-params.h src/dSFMT/dSFMT.c
	g++ $(GPPOPTS) -c src/dSFMT/dSFMT.c 

tinythread: src/TinyThread/tinythread.h src/TinyThread/fast_mutex.h src/TinyThread/tinythread.cpp
	g++ $(GPPOPTS) -c src/TinyThread/tinythread.cpp

estatistica: src/estatistica.h src/estatistica.cpp
	g++ $(GPPOPTS) -c src/estatistica.cpp

exponencial: src/exponencial.h src/exponencial.cpp
	g++ $(GPPOPTS) -c src/exponencial.cpp

fregues: src/fregues.h src/fregues.cpp
	g++ $(GPPOPTS) -c src/fregues.cpp

es: src/es.h src/es.cpp
	g++ $(GPPOPTS) -c src/es.cpp

simulador: src/simulador.h src/simulador.cpp
	g++ $(GPPOPTS) -c src/simulador.cpp

clean:
	rm -f dSFMT.o tinythread.o estatistica.o exponencial.o fregues.o es.o simulador.o ts_ad2011_1

all: clean ts_ad2011_1
